package com.dave.gd.core.rule;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

/**
 * @Class: RuleOption
 * @see com.ctg.itrdc.core.rule.RuleOption
 *
 * @author wangzy
 */
public class RuleOption implements Serializable {
    private Long optionId;
    private String optionCode;
    private String optionName;
    private boolean isCheck;
    private boolean isQuit;
    
    /**
     * 选项上下文，用户获取上下文对象，暂时用于解决2719死循环问题，
     * 但是根本解决方法是在选项上定义执行器。
     */
    private Object contextObject = null;
    
    /**
     * 标识该选项是否可更改
     */
    private boolean disable;
    
    /**
     * 标识该选项所在的选项组
     */
    private String grpNo;
    
    /**
     * 暂存对象.
     */
    private Object param1 = null;
    
    private int minChooseNum = 1;
    
    private Map<String, Object> attrMap = new HashMap<String, Object>();
    
    public Long getOptionId() {
        return optionId;
    }
    
    public void setOptionId(Long optionId) {
        this.optionId = optionId;
    }
    
    public String getOptionCode() {
        return optionCode;
    }
    
    public void setOptionCode(String optionCode) {
        this.optionCode = optionCode;
    }
    
    public String getOptionName() {
        return optionName;
    }
    
    public void setOptionName(String optionName) {
        this.optionName = optionName;
    }
    
    public boolean getIsCheck() {
        return isCheck;
    }
    
    public void setIsCheck(boolean isCheck) {
        this.isCheck = isCheck;
    }
    
    public boolean setIsQuit() {
        return isQuit;
    }
    
    public void setIsQuit(boolean isQuit) {
        this.isQuit = isQuit;
    }
    
    public Object getContextObject() {
        return contextObject;
    }
    
    public void setContextObject(Object contextObject) {
        this.contextObject = contextObject;
    }
    
    public boolean isDisable() {
        return disable;
    }
    
    public void setDisable(boolean disable) {
        this.disable = disable;
    }
    
    public String getGrpNo() {
        return grpNo;
    }
    
    public void setGrpNo(String grpNo) {
        this.grpNo = grpNo;
    }
    
    public Object getParam1() {
        return param1;
    }
    
    public void setParam1(Object param1) {
        this.param1 = param1;
    }
    
    public int getMinChooseNum() {
        return minChooseNum;
    }
    
    public void setMinChooseNum(int minChooseNum) {
        this.minChooseNum = minChooseNum;
    }
    
    public Map<String, Object> getAttrMap() {
        return attrMap;
    }
    
    public void setAttrMap(HashMap<String, Object> attrMap) {
        this.attrMap = attrMap;
    }
}
